import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Reptile {
//    需求：把下面文本中的电话，邮箱，手机号，热线都爬取出来。


//    来黑马程序员学习Java
//    电话：
//            18512516758, 18512508907
//    或联系邮箱
//    boniu@itcast.cn,
//    机电话：01036517895,010-98951256
//    邮箱：bozai@itcast.cn,
//    热线电话：400-618-9090
//            400-618-4000, 4006184000, 4006189090

    public static void main(String[] args) {
        String s = "来黑马程序员学习Java\n" +
                "//    电话：\n" +
                "//            18512516758, 18512508907\n" +
                "//    或联系邮箱\n" +
                "//    boniu@itcast.cn,\n" +
                "//    机电话：01036517895,010-98951256\n" +
                "//    邮箱：bozai@itcast.cn,\n" +
                "//    热线电话：400-618-9090\n" +
                "//            400-618-4000, 4006184000, 4006189090";
        //正则表达式
        String regex = "(1[3-9]\\d{9})|(\\w+@[\\w&&[^_]]{2,6}(\\.[a-zA-Z]{2,3}){1,2})" +
                "|(0\\d{2,3}-?[1-9]\\d{4,9})" +
                "|(400-?[1-9]\\d{2}-?[1-9]\\d{3})";
        //获取正则表达式对象
        Pattern p = Pattern.compile(regex);
        //获取文本匹配器对象
        //利用m去读取s，会按照p的规则找s里面的小串；
        Matcher m = p.matcher(s);
        //利用循环获取每一个数据
        //find()方法，找到一个就返回true，继续找；
        while (m.find()){
            String str = m.group();
            System.out.println(str);
        }
    }
}
